package br.ufrr.patrimonio.entity;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;

import br.ufrr.patrimonio.converter.BaseEntity;

@Entity
public class Item implements Serializable, BaseEntity {

	private static final long serialVersionUID = 1L;
	
	@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	@Column(name="item_id")
	private Long id;
		
	@ManyToOne
	@JoinColumn(name="fk_produto")
	private Produto produto;
	
	@ManyToOne
	@JoinColumn(name="fk_nota_fiscal")
	private NotaFiscal nota;
	
	@Column(name="item_valor")
	private Double valor_unit;
	
	@Column(name="item_marca")
	private String marca;
	
	@Column(name="item_qtd")
	private Integer quantidade;
	
		
	// Getters And Setters
	
	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}
	
	public Produto getProduto() {
		return produto;
	}

	public void setProduto(Produto produto) {
		this.produto = produto;
	}

	public NotaFiscal getNota() {
		return nota;
	}

	public void setNota(NotaFiscal nota) {
		this.nota = nota;
	}

	public Double getValor_unit() {
		return valor_unit;
	}

	public void setValor_unit(Double valor_unit) {
		this.valor_unit = valor_unit;
	}

	public String getMarca() {
		return marca;
	}

	public void setMarca(String marca) {
		this.marca = marca;
	}

	public Integer getQuantidade() {
		return quantidade;
	}

	public void setQuantidade(Integer quantidade) {
		this.quantidade = quantidade;
	}
		
	public Double getTotal() {
		if (quantidade != null && valor_unit != null)
			return quantidade * valor_unit;
		else {
			return null;
		}			
	}
	
	
	
	
}
